package com.cunshe.entity.vo;

import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;

/**
 * 菜单
 * @author xiao
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class MenuInsertVO implements Serializable {

    /**
     * 上级id
     */
    @ApiModelProperty(value = "上级id")
    protected Long parentId;

    /**
     * 标题
     */
    @ApiModelProperty(value = "标题")
    @NotBlank(message = "[title]不能为空")
    @Size(max = 255, message = "${validatedValue}长度不能大于{max}")
    private String title;

    /**
     * 标题(英文)
     */
    @ApiModelProperty(value = "标题(英文)")
    @Size(max = 255, message = "${validatedValue}长度不能大于{max}")
    private String titleEn;

    /**
     * 描述
     */
    @ApiModelProperty(value = "描述")
    @Size(max = 1000, message = "${validatedValue}长度不能大于{max}")
    private String description;

    /**
     * 描述(英文)
     */
    @ApiModelProperty(value = "描述(英文)")
    @Size(max = 1000, message = "${validatedValue}长度不能大于{max}")
    private String descriptionEn;

    /**
     * 背景图片
     */
    @ApiModelProperty(value = "背景图片")
    @Size(max = 255, message = "${validatedValue}长度不能大于{max}")
    private String bgImage;

    /**
     * 背景图片2
     */
    @ApiModelProperty(value = "背景图片2")
    @Size(max = 255, message = "${validatedValue}长度不能大于{max}")
    private String bgImage2;

    /**
     * 产品图片
     */
    @ApiModelProperty(value = "产品图片")
    @Size(max = 255, message = "${validatedValue}长度不能大于{max}")
    private String productImage;

    /**
     * 页面地址
     */
    @ApiModelProperty(value = "页面地址")
    @Size(max = 255, message = "${href}长度不能大于{max}")
    private String href;

    /**
     * 排序(降序)
     */
    @ApiModelProperty(value = "排序(降序)")
    private Integer sortNum;

    private static final long serialVersionUID = 1L;
}